package com.kfm.am;

import java.util.Scanner;

public class Exec03 {

    public static void main(String[] args) {
        //请定义一个方法用于判断一个字符串是否是对称的字符串，并在主方法中测试方法。
        // 例如：“abcba”、"上海自来水来自海上"均为对称字符串。
//        String str = "      ";
//        System.out.println(str.isBlank());
//        System.out.println(str.isEmpty());
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个字符串：");
        String str = sc.next();
        System.out.println("是否是对称字符串？" + isDuichen3(str));
    }

    public static boolean isDuichen3(String str) {
        StringBuffer sb = new StringBuffer(str);
        StringBuffer reverse = sb.reverse();
        String s = reverse.toString();
        return s.equals(str);
    }

    public static boolean isDuichen(String str) {
        // length==0的时候 isEmpty 结果为true isBlank 没有有效字符的时候结果为true
        if (str == null || str.isBlank() || str.isEmpty()) {
            return false;
        }
        for (int i = 0; i < str.length() / 2; i++) {
            if (str.charAt(i) != str.charAt(str.length() - i - 1)) {
                return false;
            }
        }
        return true;
    }

    public static boolean isDuichen2(String str) {
        if (str == null || str.isEmpty() || str.isBlank()) {
            return false;
        }
        char[] chars = str.toCharArray();
        for (int i = 0; i < chars.length / 2; i++) {
            if (chars[i] != chars[chars.length - 1 - i]) {
                return false;
            }
        }
        return true;
    }
}
